package com.navi.loaddata.core.gpEntity;

import javax.persistence.*;
import java.sql.Timestamp;

/**
 * Created by ghost on 2018/3/24.
 */
@Entity
@Table(name = "m_prod_d", schema = "dm", catalog = "qmsprd")
public class MProdD {
    private int prodKey;
    private String unqSeqId;
    private Timestamp etlTimestamp;
    private String etlEventNode;
    private String etlEventName;
    private String etlEvtSeqId;
    private String prodId;
    private String ecCode;
    private String prodCate;
    private String prodSize;
    private String prodType;
    private String prodDsc;
    private Integer shopKeyFk;
    private String shopId;
    private Integer layoutKeyFk;
    private String layoutId;
    private String routeId;
    private String routeVer;
    private Double prodThickness;
    private String validFlg;
    private String prodErpCode;
    private String evtCate;
    private String evtUser;
    private Timestamp evtTimestamp;
    private String evtNote;

    @Id
    @Column(name = "prod_key")
    public int getProdKey() {
        return prodKey;
    }

    public void setProdKey(int prodKey) {
        this.prodKey = prodKey;
    }

    @Basic
    @Column(name = "unq_seq_id")
    public String getUnqSeqId() {
        return unqSeqId;
    }

    public void setUnqSeqId(String unqSeqId) {
        this.unqSeqId = unqSeqId;
    }

    @Basic
    @Column(name = "etl_timestamp")
    public Timestamp getEtlTimestamp() {
        return etlTimestamp;
    }

    public void setEtlTimestamp(Timestamp etlTimestamp) {
        this.etlTimestamp = etlTimestamp;
    }

    @Basic
    @Column(name = "etl_event_node")
    public String getEtlEventNode() {
        return etlEventNode;
    }

    public void setEtlEventNode(String etlEventNode) {
        this.etlEventNode = etlEventNode;
    }

    @Basic
    @Column(name = "etl_event_name")
    public String getEtlEventName() {
        return etlEventName;
    }

    public void setEtlEventName(String etlEventName) {
        this.etlEventName = etlEventName;
    }

    @Basic
    @Column(name = "etl_evt_seq_id")
    public String getEtlEvtSeqId() {
        return etlEvtSeqId;
    }

    public void setEtlEvtSeqId(String etlEvtSeqId) {
        this.etlEvtSeqId = etlEvtSeqId;
    }

    @Basic
    @Column(name = "prod_id")
    public String getProdId() {
        return prodId;
    }

    public void setProdId(String prodId) {
        this.prodId = prodId;
    }

    @Basic
    @Column(name = "ec_code")
    public String getEcCode() {
        return ecCode;
    }

    public void setEcCode(String ecCode) {
        this.ecCode = ecCode;
    }

    @Basic
    @Column(name = "prod_cate")
    public String getProdCate() {
        return prodCate;
    }

    public void setProdCate(String prodCate) {
        this.prodCate = prodCate;
    }

    @Basic
    @Column(name = "prod_size")
    public String getProdSize() {
        return prodSize;
    }

    public void setProdSize(String prodSize) {
        this.prodSize = prodSize;
    }

    @Basic
    @Column(name = "prod_type")
    public String getProdType() {
        return prodType;
    }

    public void setProdType(String prodType) {
        this.prodType = prodType;
    }

    @Basic
    @Column(name = "prod_dsc")
    public String getProdDsc() {
        return prodDsc;
    }

    public void setProdDsc(String prodDsc) {
        this.prodDsc = prodDsc;
    }

    @Basic
    @Column(name = "shop_key_fk")
    public Integer getShopKeyFk() {
        return shopKeyFk;
    }

    public void setShopKeyFk(Integer shopKeyFk) {
        this.shopKeyFk = shopKeyFk;
    }

    @Basic
    @Column(name = "shop_id")
    public String getShopId() {
        return shopId;
    }

    public void setShopId(String shopId) {
        this.shopId = shopId;
    }

    @Basic
    @Column(name = "layout_key_fk")
    public Integer getLayoutKeyFk() {
        return layoutKeyFk;
    }

    public void setLayoutKeyFk(Integer layoutKeyFk) {
        this.layoutKeyFk = layoutKeyFk;
    }

    @Basic
    @Column(name = "layout_id")
    public String getLayoutId() {
        return layoutId;
    }

    public void setLayoutId(String layoutId) {
        this.layoutId = layoutId;
    }

    @Basic
    @Column(name = "route_id")
    public String getRouteId() {
        return routeId;
    }

    public void setRouteId(String routeId) {
        this.routeId = routeId;
    }

    @Basic
    @Column(name = "route_ver")
    public String getRouteVer() {
        return routeVer;
    }

    public void setRouteVer(String routeVer) {
        this.routeVer = routeVer;
    }

    @Basic
    @Column(name = "prod_thickness")
    public Double getProdThickness() {
        return prodThickness;
    }

    public void setProdThickness(Double prodThickness) {
        this.prodThickness = prodThickness;
    }

    @Basic
    @Column(name = "valid_flg")
    public String getValidFlg() {
        return validFlg;
    }

    public void setValidFlg(String validFlg) {
        this.validFlg = validFlg;
    }

    @Basic
    @Column(name = "prod_erp_code")
    public String getProdErpCode() {
        return prodErpCode;
    }

    public void setProdErpCode(String prodErpCode) {
        this.prodErpCode = prodErpCode;
    }

    @Basic
    @Column(name = "evt_cate")
    public String getEvtCate() {
        return evtCate;
    }

    public void setEvtCate(String evtCate) {
        this.evtCate = evtCate;
    }

    @Basic
    @Column(name = "evt_user")
    public String getEvtUser() {
        return evtUser;
    }

    public void setEvtUser(String evtUser) {
        this.evtUser = evtUser;
    }

    @Basic
    @Column(name = "evt_timestamp")
    public Timestamp getEvtTimestamp() {
        return evtTimestamp;
    }

    public void setEvtTimestamp(Timestamp evtTimestamp) {
        this.evtTimestamp = evtTimestamp;
    }

    @Basic
    @Column(name = "evt_note")
    public String getEvtNote() {
        return evtNote;
    }

    public void setEvtNote(String evtNote) {
        this.evtNote = evtNote;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;

        MProdD mProdD = (MProdD) o;

        if (prodKey != mProdD.prodKey) return false;
        if (unqSeqId != null ? !unqSeqId.equals(mProdD.unqSeqId) : mProdD.unqSeqId != null) return false;
        if (etlTimestamp != null ? !etlTimestamp.equals(mProdD.etlTimestamp) : mProdD.etlTimestamp != null)
            return false;
        if (etlEventNode != null ? !etlEventNode.equals(mProdD.etlEventNode) : mProdD.etlEventNode != null)
            return false;
        if (etlEventName != null ? !etlEventName.equals(mProdD.etlEventName) : mProdD.etlEventName != null)
            return false;
        if (etlEvtSeqId != null ? !etlEvtSeqId.equals(mProdD.etlEvtSeqId) : mProdD.etlEvtSeqId != null) return false;
        if (prodId != null ? !prodId.equals(mProdD.prodId) : mProdD.prodId != null) return false;
        if (ecCode != null ? !ecCode.equals(mProdD.ecCode) : mProdD.ecCode != null) return false;
        if (prodCate != null ? !prodCate.equals(mProdD.prodCate) : mProdD.prodCate != null) return false;
        if (prodSize != null ? !prodSize.equals(mProdD.prodSize) : mProdD.prodSize != null) return false;
        if (prodType != null ? !prodType.equals(mProdD.prodType) : mProdD.prodType != null) return false;
        if (prodDsc != null ? !prodDsc.equals(mProdD.prodDsc) : mProdD.prodDsc != null) return false;
        if (shopKeyFk != null ? !shopKeyFk.equals(mProdD.shopKeyFk) : mProdD.shopKeyFk != null) return false;
        if (shopId != null ? !shopId.equals(mProdD.shopId) : mProdD.shopId != null) return false;
        if (layoutKeyFk != null ? !layoutKeyFk.equals(mProdD.layoutKeyFk) : mProdD.layoutKeyFk != null) return false;
        if (layoutId != null ? !layoutId.equals(mProdD.layoutId) : mProdD.layoutId != null) return false;
        if (routeId != null ? !routeId.equals(mProdD.routeId) : mProdD.routeId != null) return false;
        if (routeVer != null ? !routeVer.equals(mProdD.routeVer) : mProdD.routeVer != null) return false;
        if (prodThickness != null ? !prodThickness.equals(mProdD.prodThickness) : mProdD.prodThickness != null)
            return false;
        if (validFlg != null ? !validFlg.equals(mProdD.validFlg) : mProdD.validFlg != null) return false;
        if (prodErpCode != null ? !prodErpCode.equals(mProdD.prodErpCode) : mProdD.prodErpCode != null) return false;
        if (evtCate != null ? !evtCate.equals(mProdD.evtCate) : mProdD.evtCate != null) return false;
        if (evtUser != null ? !evtUser.equals(mProdD.evtUser) : mProdD.evtUser != null) return false;
        if (evtTimestamp != null ? !evtTimestamp.equals(mProdD.evtTimestamp) : mProdD.evtTimestamp != null)
            return false;
        if (evtNote != null ? !evtNote.equals(mProdD.evtNote) : mProdD.evtNote != null) return false;

        return true;
    }

    @Override
    public int hashCode() {
        int result = prodKey;
        result = 31 * result + (unqSeqId != null ? unqSeqId.hashCode() : 0);
        result = 31 * result + (etlTimestamp != null ? etlTimestamp.hashCode() : 0);
        result = 31 * result + (etlEventNode != null ? etlEventNode.hashCode() : 0);
        result = 31 * result + (etlEventName != null ? etlEventName.hashCode() : 0);
        result = 31 * result + (etlEvtSeqId != null ? etlEvtSeqId.hashCode() : 0);
        result = 31 * result + (prodId != null ? prodId.hashCode() : 0);
        result = 31 * result + (ecCode != null ? ecCode.hashCode() : 0);
        result = 31 * result + (prodCate != null ? prodCate.hashCode() : 0);
        result = 31 * result + (prodSize != null ? prodSize.hashCode() : 0);
        result = 31 * result + (prodType != null ? prodType.hashCode() : 0);
        result = 31 * result + (prodDsc != null ? prodDsc.hashCode() : 0);
        result = 31 * result + (shopKeyFk != null ? shopKeyFk.hashCode() : 0);
        result = 31 * result + (shopId != null ? shopId.hashCode() : 0);
        result = 31 * result + (layoutKeyFk != null ? layoutKeyFk.hashCode() : 0);
        result = 31 * result + (layoutId != null ? layoutId.hashCode() : 0);
        result = 31 * result + (routeId != null ? routeId.hashCode() : 0);
        result = 31 * result + (routeVer != null ? routeVer.hashCode() : 0);
        result = 31 * result + (prodThickness != null ? prodThickness.hashCode() : 0);
        result = 31 * result + (validFlg != null ? validFlg.hashCode() : 0);
        result = 31 * result + (prodErpCode != null ? prodErpCode.hashCode() : 0);
        result = 31 * result + (evtCate != null ? evtCate.hashCode() : 0);
        result = 31 * result + (evtUser != null ? evtUser.hashCode() : 0);
        result = 31 * result + (evtTimestamp != null ? evtTimestamp.hashCode() : 0);
        result = 31 * result + (evtNote != null ? evtNote.hashCode() : 0);
        return result;
    }
}
